package org.example.domain.strategy.service.armory;

import java.util.Date;

/**
 * 策略抽奖的调度
 */
public interface IStrategyDispath {
    /**
     * 获取抽奖策略装配的随机结果
     * @param strategyId
     * @return
     */
    Integer getRandomAwardId(Long strategyId);

    Integer getRandomAwardId(Long strategyId,String ruleWeight);

    /**
     * 根据策略ID和奖品ID，扣减奖品缓存库存
     *
     * @param strategyId
     * @param awardId
     * @return 扣减结果
     */
    Boolean subtractionAwardStock(Long strategyId,Integer awardId, Date endDateTime);


}
